Propuesta motivacional

El modelo propuesto en este notebook sirve para transformar una red de relaciones en una distribución de probabilidad a priori que vincule a las personas (los nodos de la red). Como problema ad hoc podemos pensar en una reunión a concretarse entre un grupo de amigues. La imagen es que existe una red que vincula la decisión de asistir al evento de las personas. En términos de DVI, podemos interpretar estas probabilidades como las de encontrar a las personas de interés en el evento (que puede ser un naufragio, una fosa común u otro). En general, podemos decir que el modelo aplica a la inferencia de quienes en un grupo de contactos optarán por una entre dos opciones.

Formulación matemática

Introducción

Álgebra de escenarios

En lo que describiremos a continuación, trabajaremos con posibles escenarios y sus probabilidades. Bajo el riesgo de abusar levemente de la notación, asociaremos el símbolo \(1\) a la sentencia la persona 1 está en el evento, y el síbolo \(\bar 1\) a la negación de la sentencia anterior, es decir: la persona 1 no está en el evento. En general, para la persona \(r\) usaremos la notación \(r\) y \(\bar r\) para indicar si está o no en el evento. Notese que cada una de estas sentencias es dicotómica, por lo que \(r+\bar r\) siempre será verdad (la persona está ó no está en el evento). Al considerar una persona más, nuestro universo de opciones duplica en tamaño. Si pensamos en 2 personas, tendremos los escenarios posibles:

  • \(12\) (ambas están en el evento)
  • \(1 \bar 2\) (sólo la 1 está en el evento)
  • \(\bar 1 2\) (sólo la 2 está en el evento)
  • \(\bar 1 \bar 2\) (ninguna está en el evento)

Si pensamos en N personas, la cantidad de escenarios posibles será \(2^N\). Nuevamente, usando un poco de lógica proposicional, observemos que \(\bar1 2 + \bar 1 \bar 2\) (la persona 1 no está en el evento y la persona 2 sí está el evento ó la persona 1 nó está en el evento y la 2 tampoco) es, en términos de veracidad, equivalente a \(1\), ya que $ 1 2 + 1 2 = 1 (2 + 2)$ y dado que la segunda sentencia es siempre verdad, esta sentencia es identica a \(\bar 1\) (usando álgebra de Boole podemos decir que \(2 + \bar 2=1\)). Esto será relevante cuando nos movamos al terreno de las probabilidades.

Cuando pensamos la probabilidad de cada escenario posible, podemos identificar cada escenario como la realización de una distribución multinomial, donde los parámetros que definen la distribución son las probabilidades de cada escenario (y sólo se saca una realización, el escenario observado). Entonces, manteniendo nuestra ejemplo de dos personas, tendríamos las probabilidades \(\theta_{12}\) asociada al escenario \(12\), \(\theta_{1 \bar 2}\) asociada al escenario \(1 \bar 2\), \(\theta_{\bar 1 2}\) para \(\bar 1 2\) y \(\theta_{\bar 1 \bar 2}\) para \(\bar 1 \bar 2\). Sin embargo, estos parámetros no son independientes, al igual que los valores de verdad de los escenarios. Dado que

\[ 12 + 1 \bar 2 + \bar 1 2 + \bar 1 \bar 2 = \text{TRUE} \] ya que necesariamente uno de los escenarios debe ser el correcto, también tenemos que

\[ \theta_{12} + \theta_{ 1 \bar 2} + \theta_{\bar 1 2} + \theta_{\bar 1 \bar 2} = 1 \] Es decir que una de las probabilidades puede ser hallada en función de las otras. Más aún, la probabilidad de que la persona 1 participe del evento (sentencia que escribimos como \(1\)) la podemos calcular como

\[ \begin{align} P(1) &= P(1(2+\bar 2)) = P(12 + 1 \bar 2) \\&= P(12) + P(1 \bar 2) = \theta_{12} + \theta_{1 \bar 2} \\ &= \theta_{1} \end{align} \] Donde en el último paso definimos \(\theta_1=P(1)\) y lo vinculamos con los otros \(\theta\).

Consideremos ahora tres problemas separados.

  • Sí sólo tuviesemos una persona en solitario, nuestra distribución de probabilidades estaría dada por \(\theta_1\) y \(\theta_{\bar 1} = 1 -\theta_1\)

  • Si tuvieramos dos personas ya vimos que nuestra distribución de probabilidades queda definida por \(\theta_{12}\), \(\theta_{1 \bar 2}\), \(\theta_{\bar 1 2}\) y \(\theta_{\bar 1 \bar 2} = 1- (\theta_{12} + \theta_{1 \bar 2}+\theta_{\bar 1 2})\). Sin embargo, si agregamos la suposición adicional de que ambos son independientes tendríamos que \(P(12)=P(1)P(2)=\theta_1 \theta_2\) y entonces nuestro número de parámetros se reduce a 2.

  • Si tuvieramos tres personas, pero la tercera es independiente de las otras dos, nuestro problema matemático se partiría en dos: uno que habla de las personas 1 y 2, y que requeriría especificar una distribución \(\theta_{12},\theta_{1 \bar 2},...\) y otro para la persona 3 que requeriría especifica \(\theta_3\). Luego las probabilidades se escribirían por ejemplo como \(P(1 \bar 2 \bar 3) = P(1 \bar 2) P(\bar 3) = \theta_{1 \bar 2} (1- \theta_3)\).

La red

Lo presentado hasta aquí nos permite formalizar distintos escenarios que conecten uno o varios grupos de personas. Sin embargo, nuestro objetivo es construir un modelo que nos permita convertir información de una red en información sobre la forma en la que debemos elegir los parámetros que la representen. Veamos algunos ejemplos:

require(igraph)
## Loading required package: igraph
## 
## Attaching package: 'igraph'
## The following objects are masked from 'package:stats':
## 
##     decompose, spectrum
## The following object is masked from 'package:base':
## 
##     union
par(mfrow=c(1,3))
make_empty_graph(n=3,directed=FALSE) %>% plot()
make_empty_graph(n=3,directed=FALSE) %>% add_edges(edges=c(1,2,1,3,2,3))%>% plot()
make_empty_graph(n=3,directed=FALSE) %>% add_edges(edges=c(1,2,1,3))%>% plot()

  • La red de la izquierda corresponde a una situación en la cual no hay relación entre ninguno de los nodos. Entonces, la distribución de probabilidad apropiada sería una en la que todos los nodos son independientes: \(P(r)=\theta_r\), y \(P(123) = \theta_1 \theta_2 \theta_3\).

  • Las redes del centro y de la derecha require un poco más de cuidado.

  • La red del centro tiene dos interpretaciones posibles. Una sería pensar que al estar todos conectados entre todos, con lo cual nuestra distribución sería la conjunta completa \((\theta_{123},\dots,\theta_{\bar 1 \bar 2 \bar 3})\). Aún así, podemos simplificar esto bajo ciertos supuestos, que veremos más adelante.

  • La red de la derecha, por el contrario, vincula a los tres nodos, pero no de forma simétrica. Mientras que la persona 2 no está conectada a la 3 directamente, ambas se conectan con la 1. Esto nos sugiere que considerar directamente la distribución conjunta completa podría ser excesivo.

La conclusión que extraemos de estos tres ejemplos es:

  • Cuando las personas están desconectadas completamente (no existen caminos entre ellas), tiene sentido pensarlas como independientes.

  • Cuando hay conexiones entre las personas, parece sensato más que pensar en el grupo completo directamente, pensar las correlaciones de a pares. Esto tiene sentido porque bajo la apariencia de la red las conexiones entre las personas siempre son de a pares. Pensandolo condicionalmente, lo que estaríamos diciendo es que para estudiar \(P(2|3)\) en una red como la del gráfico de la derecha, tendríamos que pensar en \(P(2|1)\) y en \(P(1|3)\), siendo: \(P(2|3) = P(21|3) + P(2 \bar 1|3) = P(2 | 13) P(1|3) + P(2|\bar1 3)P(\bar 1 |3) = P(2|1)P(1|3) + P(2|\bar 1)P(\bar 1|3)\). Es decir, condicionando bajo \(1\), \(3\) es irrelevante para la probabilidad de \(2\).

Dado que los escenarios ocurren una única vez, la estimación de los \(\theta\) debemos hacerla en base a otra información. A continuación, lo que proponemos es usar la estructura de la red para construir una distribución a priori sobre los \(\theta\) que nos permita representar las conexiones que esta representa, sin darnos información específica sobre si las personas van a estar o no en el evento.

Para construir nuestra priori sobre los \(\theta\) vamos a seguir dos pasos:

  • El primero consiste en definir cuál es la distribución de probabilidad que representa una red que consista de dos personas conectadas por un link. Dado que los links serán nuestra unidad fundamental, necesitamos tener caracterizado qué información nos da cada uno.

  • El segundo consiste en definir como combinar distintos links. Las redes del gráfico anterior nos sugieren que si bien tiene sentido pensar las probabilidades en términos de los links, la información de un nodo debería afectar a los otros a través de las conexiones que hay entre ambos.

Notación

En todo momento estaremos pensando en las probabilidades de que ocurran los escenarios. Ya mencionamos que notaremos un escenario \(rs\), que significa que la persona r y la persona s ambas están presentes en el evento. También ya mostramos que para cada escenario que involucre a un subconjunto de personas, tenemos un espacio muestral completo, en el sentido de que \(rs + \bar r s + r \bar s + \bar r \bar s = 1\), dado que necesariamente alguna de estas situaciones debe ser cierta. Este concepto vale por igual al ampliar el número de personas. Además, vimos que podemos marginalizar sobre escenarios, de forma que, por ejemplo \(rs = rsq + rs \bar q\), gracias a que \(q + \bar q = 1\). Las probabilidades las notamos con la letra \(\theta\), donde \(P(rs) = \theta_{rs}\). De las relaciones entre los escenarios se sigue que

\[ \theta_{rs} + \theta_{r \bar s} + \theta_{\bar r s} + \theta_{\bar r \bar s} = 1 \] y que \[ \theta_{rs} = \theta_{rsq} + \theta_{rs\bar q} \]

Para ahorra espacio, llamaremos \(z_{rs}=(\theta_{rs},\theta_{r \bar s},\theta_{\bar r s})\), que es el vector que nos representa las tres probabilidades necesarias para definir las probabilidades de los eventos que sólo involucren a las personas r y s.

Conclusiones

Vimos cómo construir la distribución de probabilidad de un link. Esto se realiza a través de una Dirichlet que tiene dos parámetros a definir, \(\gamma\) que representa cuanto más creible es el escenario “en conjunto” que el escenario “por separado”; y \(\kappa\) que mide la variabilidad en el sistema completo. Cuando consideremos un link que une a las personas r y s, llamaremos a la función que obtuvimos \(f_{rs}(z_{rs}|w_{rs})\), o simplemente \(f_{rs}(z_{rs})\) o \(f_{rs}\) según se sobre entienda o no los argumentos y parámentros en cada caso.

Las mediciones

Discusión: ¿qué medimos en este problema?

En este ejercicio planteado, empezamos preguntandonos por distintos escenarios \(123,12\bar3,\dots\). Construimos un modelo bayesiano que nos permite conectar las probabilidades de que cada persona participe de un evento en términos de una red. Sin embargo, este modelo es en principio estático si no consideramos en qué forma puede actualizarse con mediciones, información nueva, etc. La pregunta es, ¿cómo incorporamos en este modelo que creemos (por otras fuentes) que \(P(1)\) es alta? ¿Cómo incorporamos que la persona 1 se encuentra en el evento con certeza y por lo tanto \(\theta_1=1\)?

Información externa sobre los \(\theta\)

Podemos imaginar que una persona está participando ya del evento y nos dice que cree con cierta confianza haber visto en el evento a la persona de interés. O que debido a otros análisis genéticos las chances de que la persona se encuentre en este evento son de \(10^10\). Bajo cualquiera de estas imagenes, una medición típica \(M_i\) sería sobre las variable \(\theta_i\). Es decir, la información (externa) que obtenemos es referente al \(\theta_i\). Las mediciones se verán representadas por una función de verosimilitud. Por ejemplo:

\[ g(\theta_1|M_1) \propto \theta_1^{\alpha_{1}-1} (1-\theta_1)^{\alpha_{\bar 1}-1} \] donde la función \(g\)representa la verosimilitud de cada \(\theta_1\) en base a una fuente de información externa. Los parámetros \(\alpha_1\) y \(\alpha_{\bar 1}\) pueden ser obscuros de entender a simple vista, pero si pensamos en que nos informan el valor esperado (según la medición) de \(\theta_i\) y su varianza, equivaldría a decir que:

\[ \begin{align} E[\theta_1|M_1] &= \frac{\alpha_1}{\alpha_1 + \alpha_{\bar 1}} \\ V[\theta_1|M_1] &= \frac{\alpha_1 \alpha_{\bar 1}}{(\alpha_1 + \alpha_{\bar 1})^2} \frac{1}{\alpha_1 + \alpha_{\bar 1} +1} \end{align} \] de donde podríamos bien despejar los valores de \(\alpha_1\) y \(\alpha_{\bar 1}\). En última instancia, lo que estamos haciendo es plasmar la información que nos dan (información sobre \(\theta_1\)) en una distribución de Dirichlet (equivalente a usar una distribución normal cuando nos dicen media y varianza).

En las variables \(\theta_{12}\),\(\theta_{1 \bar 2}\) y \(\theta_{\bar 1 2}\) esto equivale a decir:

\[ g(z|M_1) \propto (\theta_{12} + \theta_{1 \bar 2})^{\alpha_{1}-1} (1-\theta_{12} - \theta_{1 \bar 2})^{\alpha_{\bar 1}-1} \]

¿Cómo se da esta medición? Esto aún sería un punto a discutir. Así como está escrito este modelo, corresponde a pensar que medimos \(\alpha_1 -1\) casos favorables y \(\alpha_{\bar 1}-1\) casos desfavorables. En este contexto es dudoso aún qué representarían estos casos favorables y desfavorables. Aún así, también podemos decir que lo que mire el observador es un valor medio más una varianza, y representamos eso a través de esta distribución.

Con esto dicho, nuestra distribución a posteriori será

\[ h(z) = g(z)\cdot f(z) \]